﻿using System;
using System.Collections.Generic;

//[JsonObject(MemberSerialization.OptOut)]类 + [JsonIgnore]属性  ,默认序列化+指定忽略
//[JsonObject(MemberSerialization.OptIn)]类  + [JsonProperty]属性,默认不序列化+指定属性序列化

namespace BanaToys.InfoSys.Web.ApiCall.BanaWww
{

    #region item

    /// <summary>
    /// json产品,sync接口用,简单,list/detail的公用父类
    /// </summary>
    public class i_attach_item
    {
        public string FRowGuid { get; set; }
        public string FAttachCategory { get; set; }
        public string FAttachGuid { get; set; }
        public string FAttachCode { get; set; }
        public int? FOrderNo { get; set; }
        public string FFileType { get; set; }
        public string FRemark { get; set; }
        public bool? FIsDisabled { get; set; }

        public string FChannelName { get; set; }
        public string FFileDetailTextOCR { get; set; }

        #region 需要上传文件后才能获取到的信息

        public string FFileUrl { get; set; }
        public bool? FFileUrlIsAbsolute { get; set; }
        public int? FFileSizeByte { get; set; }
        public string FFileMD5 { get; set; }
        public string FFileOriginalName { get; set; }

        #endregion

    }

    /// <summary>
    /// json产品,list,detail接口用,扩展了sync
    /// </summary>
    public class i_attach_item_view : i_attach_item
    {
        
    }

    #endregion

    #region q

    /// <summary>
    /// json,同步,q
    /// </summary>
    public class q_attach_sync
    {
        public i_attach_item Item { get; set; }
    }

    /// <summary>
    /// list,q,查询结果列表
    /// </summary>
    public class q_attach_list
    {
        public string QCategory { get; set; }
        public string QGuid { get; set; }
        public string QCode { get; set; }
        public string QFileType { get; set; }

        //public string QIsDisabled { get; set; }

        /// <summary>
        /// 默认每页10条
        /// </summary>
        public int? PageSize { get; set; }

        /// <summary>
        /// 默认0
        /// </summary>
        public int? PageIndex { get; set; }
    }

    /// <summary>
    /// detail,q
    /// </summary>
    public class q_attach_detail
    {
        public string FRowGuid { get; set; }

        public string FAttachCategory { get; set; }
        public string FAttachCode { get; set; }
    }

    /// <summary>
    /// delete,q
    /// </summary>
    public class q_attach_delete
    {
        public string FRowGuid { get; set; }
    }

    #endregion

    #region a

    /// <summary>
    /// sync,a
    /// </summary>
    public class a_attach_sync : a__base
    {
        //
    }

    /// <summary>
    /// list,a
    /// </summary>
    public class a_attach_list : a__base
    {
        public int? PageSize { get; set; }
        public int? PageIndex { get; set; }
        public int? RowCount { get; set; }

        public List<i_attach_item_view> List { get; set; }
    }

    /// <summary>
    /// detail,a
    /// </summary>
    public class a_attach_detail : a__base
    {
        public i_attach_item_view Item { get; set; }
    }

    /// <summary>
    /// delete,a
    /// </summary>
    public class a_attach_delete : a__base
    {
        //
    }

    #endregion

}